layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
    var $ = layui.$;
    var layer = layui.layer;
    var form = layui.form;
    var table = layui.table;
    var $ax = layui.ax;
    var admin = layui.admin;
    var func = layui.func;

    /**
     * 系统管理--消息管理
     */
    var Notice = {
        tableId: "noticeTable"    //表格id
    };
    /**
     * 检索店名
     */
    var languageAjax = new $ax(Feng.ctxPath + "/btyWage/getDm");
    var languageResult = languageAjax.start();
    console.info(languageResult);
    $.each(languageResult, function (index, val) {
        $("#dm").append("<option value='" + val.dm + "'>" + val.dm + "</option>");
    });
    form.render('select');

    Notice.initColumn = function () {
        return [[
            {type: 'checkbox', fixed: true},
            {field: 'dm', align: "left", sort: true, title: '店名',width:175, fixed: true, style: 'text-align: left'},
            {field: 'id', align: "left", hide: true, sort: true, title: 'id'},
            {field: 'csqy', align: "left", sort: true, title: '所属区域',width:100},
            {field: 'yyjlqy', align: "left", sort: false, title: '营运经理区域',width:110},
            {field: 'ctbh', align: "left", sort: true, title: '餐厅编号'},
            {field: 'spjyxk', align: "left", sort: true, title: '食品经营许可证截止时间'},
            {field: 'yyzzfr', align: "left", sort: false, title: '营业执照法人',width:100},
            {field: 'ctywxgm', align: "left", sort: false, title: '是否购买意外险',width:120},
            {field: 'ctywxjzsj', align: "left", sort: true, title: '意外险截止时间'},
            {field: 'ctggzrxgm', align: "left", sort: false, title: '是否购买公共责任险'},
            {field: 'ctggzrxjzsj', align: "left", sort: true, title: '公共责任险截止时间'},
            {align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 110}
        ]];
    };
    // 重置按钮事件
    $('#btnReset').click(function () {
        $('input').val('');
    });
    /**
     * 点击查询按钮
     */
    Notice.search = function () {
        var queryData = {};
        queryData['ctbh'] = $("#ctbh").val();
        queryData['dm'] = $("#dm").val();
        table.reload(Notice.tableId, {
            where: queryData, page: {curr: 1}
        });
    };


    /**
     * 点击修改
     *
     * @param data 点击按钮时候的行数据
     */
    Notice.onEditNotice = function (data) {
        func.open({
            height: 980,
            title: '修改档案',
            data: data,
            content: Feng.ctxPath + "/btyAqjj/btyAqjj_update/" + data.id,
            tableId: Notice.tableId
        });

    };

    /**
     * 点击导出按钮
     */
    Notice.export = function () {
        // var queryData = {};
        // queryData['ctbh'] = $("#ctbh").val();
        // queryData['dm'] = $("#dm").val();
        var ajax = new $ax("/btyAqjj/export", function (data) {
        }, function (data) {
        });
        // ajax.set("queryData", queryData);
        const result = ajax.start();
        if (result.length === 0) {
            Feng.error("请选择要导出的数据");
        } else {
            table.exportFile(tableResult.config.id, result, 'xls');
        }
    };

    /**
     * 点击同步法人及卫生许可证信息
     */
    Notice.synNotice = function (data) {
        $.ajax({
            type: "PUT",
            url: "/btyAqjj/updateTxl",
            datatype: "json",
            data: data,
            success: function (data) {
                table.reload(Notice.tableId);
                Feng.success("同步完成！")
            }, error: function () {
                Feng.error("修改失败！");
            }
        });
    };

    // 渲染表格
    var tableResult = table.render({
        elem: "#" + Notice.tableId,
        url: Feng.ctxPath + '/btyAqjj/list',
        page: true,
        cellMinWidth: 120,
        limit: 20,
        height: "full-59",
        cols: Notice.initColumn(),
        //给单元格标注颜色
        done: function (res, page, count) {
            var that = this.elem.next();
            res.data.forEach(function (item, index) {
                //获取意外险和当前日期相差的天数
                var ywxdays=getDaysBetween(new Date(),new Date(item.ctywxjzsj));
                //获取许可证和当前日期相差的天数
                var xkzdays=getDaysBetween(new Date(),new Date(item.spjyxk));
                //获取公共责任险和当前日期相差的天数
                var zrxdays=getDaysBetween(new Date(),new Date(item.ctggzrxjzsj));
                //意外险一个月之内标红
                if (ywxdays<30) {//判断条件，符合条件增加背景色
                    //根据自己需要加颜色
                    var td = that.find(".layui-table-box tbody tr[data-index='" + index + "'] td[data-field='ctywxjzsj']").css("background-color", "#a6d792");//给单元格添加颜色
                }
                //许可证和公共责任险两个月内标红
                if (xkzdays<60) {//判断条件，符合条件增加背景色
                    //根据自己需要加颜色
                    var td = that.find(".layui-table-box tbody tr[data-index='" + index + "'] td[data-field='spjyxk']").css("background-color", "#a6d792");//给单元格添加颜色
                }
                if (zrxdays<60) {//判断条件，符合条件增加背景色
                    //根据自己需要加颜色
                    var td = that.find(".layui-table-box tbody tr[data-index='" + index + "'] td[data-field='ctggzrxjzsj']").css("background-color", "#a6d792");//给单元格添加颜色
                }

            });
        }
    });

    function  getDaysBetween(dateString1,dateString2){
        var  startDate = Date.parse(dateString1);
        var  endDate = Date.parse(dateString2);
        var days=(endDate - startDate)/(1*24*60*60*1000);
        return  days;
    }

    // 搜索按钮点击事件
    $('#btnSearch').click(function () {
        Notice.search();
    });

    // 导出通讯录
    $('#btnExport').click(function () {
        Notice.export();
    });

    // 同步法人及卫生许可证信息
    $('#btnSyn').click(function () {
        Notice.synNotice();
    });

    // 添加餐厅
    $('#btnAddct').click(function () {
        Notice.openAddNotice();
    });
    //添加负责人
    $('#btnAddfzr').click(function () {
        Notice.openAddNotice2();
    });


    // 工具条点击事件
    table.on('tool(' + Notice.tableId + ')', function (obj) {
        var data = obj.data;
        console.log(data);
        var layEvent = obj.event;
        if (layEvent === 'edit') {
            Notice.onEditNotice(data);
        } else if (layEvent === 'delete') {
            Notice.onDeleteNotice(data);
        }
    });
});